package isanfeng.tuxiaoer.pattern.structural.adapter.classadapter;

/**
 * 适配器模式：
 * 定义：将一个类的接口转换成客户期望的另一个接口，使原本接口不兼容的类可以一起工作。
 * 适用场景：
 *      已经存在的类，它的方法和需求不匹配时，方法结果相同或相似
 *      不是软件设计阶段考虑的设计模式，是随着软件维护，由于不同产品，不同厂家造成功能类似而接口不相同情况下的解决方案
 * 优点：
 *      能提高类的透明性和复用，现有的类复用但不需要改变
 *      目标类和适配器类解耦，提高程序扩展性
 * 符合开闭原则
 * 扩展：
 *      类适配器---继承方式
 *      对象适配器---组合方式
 * 相关设计模式
 *      适配器和外观模式
 * @author 李红辉
 * @version 1.0
 * @date 2019/10/12 18:54
 */
public class Test {
    public static void main(String[] args) {
        Target target = new TargetImpl();
        target.request();

        Target adapterTarget = new Adapter();
        adapterTarget.request();
    }
}
